SaferPluginSQLHelpers

La classe SaferPluginSQLHelpers fournit des méthodes d'aide pour la construction de requêtes SQL liées aux dates et aux vérifications de conditions.

Méthodes

isInDate(string $column, DateTimeInterface|string|int|array ...$days): string

public static function isInDate(string $column, DateTimeInterface|string|int|array ...$days): string

Description

Vérifie si la valeur de la colonne donnée est dans les dates spécifiées.

Paramètres

  • string $column : Le nom de la colonne à vérifier.
  • DateTimeInterface|string|int|array ...$days : Les dates à vérifier. Peut être un objet DateTimeInterface, une chaîne dans un format de date valide, un entier représentant un timestamp, ou un tableau avec des clés 'year', 'month', et 'day'.

Retour

  • string : La condition SQL pour la vérification de date.

Exemple

$sqlCondition = SaferPluginSQLHelpers::isInDate('date_column', '2024-01-01', ['year' => 2024, 'month' => 12, 'day' => 25]);
// Retourne la condition SQL pour vérifier si 'date_column' est le 1er janvier 2024 ou le 25 décembre 2024

isNotInDate(string $column, DateTimeInterface|string|int|array ...$days): string

public static function isNotInDate(string $column, DateTimeInterface|string|int|array ...$days): string

Description

Vérifie si la valeur de la colonne donnée n'est pas dans les dates spécifiées.

Paramètres

  • string $column : Le nom de la colonne à vérifier.
  • DateTimeInterface|string|int|array ...$days : Les dates à vérifier. Peut être un objet DateTimeInterface, une chaîne dans un format de date valide, un entier représentant un timestamp, ou un tableau avec des clés 'year', 'month', et 'day'.

Retour

  • string : La condition SQL pour la vérification de date (négative).

Exemple

$sqlCondition = SaferPluginSQLHelpers::isNotInDate('date_column', '2024-01-01', ['year' => 2024, 'month' => 12, 'day' => 25]);
// Retourne la condition SQL pour vérifier si 'date_column' n'est pas le 1er janvier 2024 ou le 25 décembre 2024

isPublicHoliday(string $column, array|null $years = null): string

public static function isPublicHoliday(string $column, array|null $years = null): string

Description

Vérifie si la valeur de la colonne donnée représente un jour férié.

Paramètres

  • string $column : Le nom de la colonne à vérifier.
  • array|null $years : Optionnel. Un tableau d'années à considérer pour les jours fériés. Si non fourni, seuls les jours fériés fixes seront considérés.

Retour

  • string : La condition SQL pour vérifier les jours fériés.

Exemple

$sqlCondition = SaferPluginSQLHelpers::isPublicHoliday('date_column', [2024]);
// Retourne la condition SQL pour vérifier si 'date_column' est un jour férié en 2024

isNotPublicHoliday(string $column, array|null $years = null): string

public static function isNotPublicHoliday(string $column, array|null $years = null): string

Description

Vérifie si la valeur de la colonne donnée ne représente pas un jour férié.

Paramètres

  • string $column : Le nom de la colonne à vérifier.
  • array|null $years : Optionnel. Un tableau d'années à considérer pour les jours fériés. Si non fourni, seuls les jours fériés fixes seront considérés.

Retour

  • string : La condition SQL pour vérifier les jours fériés (négative).

Exemple

$sqlCondition = SaferPluginSQLHelpers::isNotPublicHoliday('date_column', [2024]);
// Retourne la condition SQL pour vérifier si 'date_column' n'est pas un jour férié en 2024

isWeekend(): string

public static function isWeekend(): string

Description

Vérifie si la date tombe pendant le week-end (samedi ou dimanche).

Retour

  • string : La condition SQL pour vérifier le week-end.

Exemple

$sqlCondition = SaferPluginSQLHelpers::isWeekend();
// Retourne la condition SQL pour vérifier si la date est un samedi ou un dimanche

or(string ...$conditions): string

public static function or(string ...$conditions): string

Description

Combine plusieurs conditions en utilisant l'opérateur OR.

Paramètres

  • string ...$conditions : Les conditions à combiner.

Retour

  • string : La condition SQL combinée.

Exemple

$sqlCondition = SaferPluginSQLHelpers::or('condition1', 'condition2');
// Retourne la condition SQL combinée avec l'opérateur OR

and(string ...$conditions): string

public static function and(string ...$conditions): string

Description

Combine plusieurs conditions en utilisant l'opérateur AND.

Paramètres

  • string ...$conditions : Les conditions à combiner.

Retour

  • string : La condition SQL combinée.

Exemple

$sqlCondition = SaferPluginSQLHelpers::and('condition1', 'condition2');
// Retourne la condition SQL combinée avec l'opérateur AND

toArray(array $pdoOutput): array

public static function toArray(array $pdoOutput): array

Description

Convertit la sortie d'une requête PDO en un tableau associatif.

Paramètres

  • array $pdoOutput : La sortie d'une requête PDO.

Retour

  • array : Le tableau associatif converti.

Exemple

$array = SaferPluginSQLHelpers::toArray($pdoOutput);
// Convertit la sortie PDO en tableau associatif

in(string $column, array $list): string

public static function in(string $column, array $list): string

Description

Génère une condition SQL pour vérifier si la valeur de la colonne donnée est dans la liste fournie.

Paramètres

  • string $column : Le nom de la colonne à vérifier.
  • array $list : La liste des valeurs à vérifier.

Retour

  • string : La condition SQL pour la vérification dans la liste.

Exemple

$sqlCondition = SaferPluginSQLHelpers::in('column', [1, 'value', 'another_value']);
// Retourne la condition SQL pour vérifier si 'column' est dans la liste fournie